return {
  "romgrk/barbar.nvim",
  config = function()
    require "barbar".setup {
      -- Disable highlighting alternate buffers
      highlight_alternate = false,

      -- Disable highlighting file icons in inactive buffers
      highlight_inactive_file_icons = false,

      -- Enable highlighting visible buffers
      highlight_visible = true,

      icons = {
        -- Configure the base icons on the bufferline.
        -- Valid options to display the buffer index and -number are `true`, 'superscript' and 'subscript'
        buffer_index = true,
        -- buffer_number = true,
        -- button = '',
        -- gitsigns = {
        --   added = {enabled = true, icon = '+'},
        --   changed = {enabled = true, icon = '~'},
        --   deleted = {enabled = true, icon = '-'},
        -- },
        separator = {left = '▎', right = ''},

        -- If true, add an additional separator at the end of the buffer list
        separator_at_end = true,

        -- Configure the icons on the bufferline when modified or pinned.
        -- Supports all the base icon options.
        modified = {button = '●'},
        -- pinned = {button = '', filename = true},

        -- Use a preconfigured buffer appearance— can be 'default', 'powerline', or 'slanted'
        preset = 'default',
      },
      maximum_padding = 1,
      minimum_padding = 1,
      maximum_length = 30,
      minimum_length = 0,
    }
    local map = vim.api.nvim_set_keymap
    local opts = { noremap = true, silent = true }
    -- Re-order to previous/next
    map('n', '<C-<>', ':BufferMovePrevious<CR>', opts)
    map('n', '<C->>', ':BufferMoveNext<CR>', opts)
    -- Goto buffer in position...
    map('n', '<leader>1', ':BufferGoto 1<CR>', opts)
    map('n', '<leader>2', ':BufferGoto 2<CR>', opts)
    map('n', '<leader>3', ':BufferGoto 3<CR>', opts)
    map('n', '<leader>4', ':BufferGoto 4<CR>', opts)
    map('n', '<leader>5', ':BufferGoto 5<CR>', opts)
    map('n', '<leader>6', ':BufferGoto 6<CR>', opts)
    map('n', '<leader>7', ':BufferGoto 7<CR>', opts)
    map('n', '<leader>8', ':BufferGoto 8<CR>', opts)
    map('n', '<leader>9', ':BufferGoto 9<CR>', opts)
    map('n', '<leader>0', ':BufferLast<CR>', opts)
    -- Pin/unpin buffer
    map('n', '<C-p>', ':BufferPin<CR>', opts)
    -- Close buffer
    map('n', '<leader>bc', ':BufferClose<CR>', opts)
    map('n', '<leader>bd', ':BufferCloseAllButCurrent<CR>', opts)
    -- Wipeout buffer
    --                 :BufferWipeout
    -- Magic buffer-picking mode
    map('n', '<leader>bp', '<Cmd>BufferPick<CR>', opts)
    map('n', '<leader>bpc', '<Cmd>BufferPickClose<CR>', opts)
  end
}
